package com.cg.design.graphicdesignpattern.decorator;

/**
 * 用于显示单行字符串的类，是Display的子类
 *
 * @program: LeetCode->StringDisplay
 * @description: 用于显示单行字符串的类，是Display的子类
 * @author: cg
 * @create: 2022-03-25 19:06
 **/
public class StringDisplay extends Display {

    /**
     * 保存要显示的字符串
     */
    private final String string;

    public StringDisplay(String string) {
        this.string = string;
    }

    @Override
    public int getColumns() {
        return string.getBytes().length;
    }

    @Override
    public int getRows() {
        // 固定返回1
        return 1;
    }

    @Override
    public String getRowText(int row) {
        // 仅当row=0时返回返回值
        if (row == 0) {
            return string;
        } else {
            return null;
        }
    }
}
